<template>
    <div>
        <h4>- Object.is() 与严格比较运算符（===）的行为基本一致</h4>
        <p>区别：解决了 === 中 NaN不等于自身，以及+0等于-0 的问题</p>
        <h4>- Object.assign(target, source1, source2, ...)用于对象的合并，将源对象（source）的所有可枚举属性，复制到目标对象（target）</h4>
        <p>如果目标对象与源对象有同名属性，或多个源对象有同名属性，则后面的属性会覆盖前面的属性；如果只有一个参数，Object.assign会直接返回该参数；如果该参数不是对象，则会先转成对象，然后返回；目标位置无法转换回报错但是源位置无法转换会跳过；字符串会被转换成数组对象拷贝进目标对象</p>
        <code>注意：这个方法是浅拷贝 同名属性替换时也只替换最外层的属性名 Lodash 的_.defaultsDeep方法可以得到深拷贝的合并 另外 含有取值函数get的对象会计算之后再拷贝</code>
        <code>常见用途：为对象添加属性和方法、克隆对象（浅）、合并多个对象、为属性指定默认值</code>
        <h4>- Object.getOwnPropertyDescriptors()返回指定对象<b>所有</b>自身属性（非继承属性）的描述对象 放在一个对象中而不是数组</h4>
        <h4>- __proto__属性，Object.setPrototypeOf()，Object.getPrototypeOf()</h4>
        <p><b>__proto__属性</b>用来读取或设置当前对象的prototype对象 建议使用<b>Object.setPrototypeOf()</b>（写操作，来设置一个对象的prototype对象，返回参数对象本身）、<b>Object.getPrototypeOf()</b>（读操作，用于读取一个对象的原型对象）、<b>Object.create(proto)</b>（生成操作，生成一个以proto为原型对象的对象）代替</p>
        <h4>Object.keys()，Object.values()，Object.entries()</h4>
        <p><b>Object.keys</b>方法，返回一个数组，成员是参数对象自身的（不含继承的）所有可遍历（enumerable）属性的键名；<b>Object.values</b>方法返回一个数组，成员是参数对象自身的（不含继承的）所有可遍历（enumerable）属性的键值；<b>Object.entries()</b>方法返回一个数组，成员是参数对象自身的（不含继承的）所有可遍历（enumerable）属性的键值对数组</p>
        <h4>Object.fromEntries() 是Object.entries()的逆操作，用于将一个键值对数组转为对象</h4>
        <code>Object.fromEntries([['foo', 'bar'],['baz', 42]]) //{ foo: "bar", baz: 42 }</code>
        <p><b>！！将查询字符串转换成对象：</b><code>Object.fromEntries(new <b>URLSearchParams</b>('foo=bar&baz=qux')) //{ foo: "bar", baz: "qux" }</code></p>
    </div>
</template>

<script>
export default {
    
}
</script>

<style scoped>

</style>